#include <stdio.h>
#include <stdlib.h>

int a;
char vc[6] = {10,2,3,4,5,6};

void set_bit3()
{
 /*80484d0:	55                   	push   %ebp
 80484d1:	89 e5                	mov    %esp,%ebp
 80484d3:	a1 28 a0 04 08       	mov    0x804a028,%eax
 80484d8:	83 c8 08             	or     $0x8,%eax
 80484db:	a3 28 a0 04 08       	mov    %eax,0x804a028*/
    a |= 0x8;

 /*80484e0:	5d                   	pop    %ebp
 80484e1:	c3                   	ret  */ 
} 

void clear_bit3()
{
 /*80484e2:	55                   	push   %ebp
 80484e3:	89 e5                	mov    %esp,%ebp
 80484e5:	a1 28 a0 04 08       	mov    0x804a028,%eax
 80484ea:	83 e0 f7             	and    $0xfffffff7,%eax
 80484ed:	a3 28 a0 04 08       	mov    %eax,0x804a028*/
    a &= ~0x8;

 /*80484f2:	5d                   	pop    %ebp
 80484f3:	c3                   	ret */  
} 

int main(void)
{
 /*80484f4:	55                   	push   %ebp
 80484f5:	89 e5                	mov    %esp,%ebp
 80484f7:	83 e4 f0             	and    $0xfffffff0,%esp
 80484fa:	83 ec 20             	sub    $0x20,%esp
 80484fd:	c7 05 28 a0 04 08 03 	movl   $0x3,0x804a028*/
    a = 0x3;    

 /*8048504:	00 00 00 
 8048507:	c6 44 24 1a 0a       	movb   $0xa,0x1a(%esp)
 804850c:	c6 44 24 1b 02       	movb   $0x2,0x1b(%esp)
 8048511:	c6 44 24 1c 03       	movb   $0x3,0x1c(%esp)
 8048516:	c6 44 24 1d 04       	movb   $0x4,0x1d(%esp)
 804851b:	c6 44 24 1e 05       	movb   $0x5,0x1e(%esp)
 8048520:	c6 44 24 1f 06       	movb   $0x6,0x1f(%esp)*/
    char vb[6] = {0xa, 0x2, 0x3, 0x4, 0x5, 0x6};

 /*8048525:	c7 44 24 04 08 00 00 	movl   $0x8,0x4(%esp)
 804852c:	00 
 804852d:	c7 04 24 44 86 04 08 	movl   $0x8048644,(%esp)
 8048534:	e8 57 fe ff ff       	call   8048390 <printf@plt>*/
    printf("a = %d\n", 8);

 /*8048539:	e8 92 ff ff ff       	call   80484d0 <set_bit3>*/
    set_bit3();

 /*804853e:	a1 28 a0 04 08       	mov    0x804a028,%eax
 8048543:	89 44 24 04          	mov    %eax,0x4(%esp)
 8048547:	c7 04 24 44 86 04 08 	movl   $0x8048644,(%esp)
 804854e:	e8 3d fe ff ff       	call   8048390 <printf@plt>*/
    printf("set = %x\n", (a));

 /*8048553:	e8 8a ff ff ff       	call   80484e2 <clear_bit3>*/
    clear_bit3();

 /*8048558:	a1 28 a0 04 08       	mov    0x804a028,%eax
 804855d:	89 44 24 04          	mov    %eax,0x4(%esp)
 8048561:	c7 04 24 44 86 04 08 	movl   $0x8048644,(%esp)
 8048568:	e8 23 fe ff ff       	call   8048390 <printf@plt>*/
    printf("clear = %x\n", (a));

 /*804856d:	0f b6 44 24 1a       	movzbl 0x1a(%esp),%eax
 8048572:	0f be c0             	movsbl %al,%eax
 8048575:	89 44 24 04          	mov    %eax,0x4(%esp)
 8048579:	c7 04 24 44 86 04 08 	movl   $0x8048644,(%esp)
 8048580:	e8 0b fe ff ff       	call   8048390 <printf@plt>*/
    printf("a = %d\n", vb[0]);

 /*8048585:	0f b6 05 1c a0 04 08 	movzbl 0x804a01c,%eax
 804858c:	0f b6 c0             	movzbl %al,%eax
 804858f:	89 44 24 04          	mov    %eax,0x4(%esp)
 8048593:	c7 04 24 44 86 04 08 	movl   $0x8048644,(%esp)
 804859a:	e8 f1 fd ff ff       	call   8048390 <printf@plt>*/
    printf("a = %d\n", vc[0]);
    

 /*804859f:	b8 00 00 00 00       	mov    $0x0,%eax
 80485a4:	c9                   	leave  
 80485a5:	c3                   	ret */   

    return 0;
}


